package com.yunxi.finance.pojo;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.yunxi.core.web.DateJsonDeserializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * Created by chenmeng on 2019/9/16.
 */
@Data
public class DynamicRebateCommissionQueryReqVO implements Serializable{

    @ApiModelProperty(value = "动态返利编码")
    private String dynamicId;

    @ApiModelProperty(value = "1固定返利 2动态返利")
    private Integer isDynamic;

    @ApiModelProperty(value = "渠道商编码")
    private String partnerCode;

    @ApiModelProperty(value = "返利类型")
    private Integer rabateType;

    @ApiModelProperty(value = "返利类型名称")
    private String rabateTypeName;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonDeserialize(using=DateJsonDeserializer.class)
    @ApiModelProperty(value = "返利时间")
    private Date rabateTime;

    @ApiModelProperty(value = "审核状态，返利状态(1审核通过2待审核3驳回)")
    private Integer auditStatus;

    @ApiModelProperty(value = "返利名称")
    private String rabateName;

    @ApiModelProperty(value = "返利金额")
    private BigDecimal rabateAmount;

    @ApiModelProperty(value = "备注")
    private String memo;

    @ApiModelProperty(value = "1启用 0禁用")
    private Integer status;

    @ApiModelProperty(value = "是否删除 1是 0 否")
    private Integer isDel;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonDeserialize(using=DateJsonDeserializer.class)
    @ApiModelProperty(value = "开始时间")
    private Date beginDate;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonDeserialize(using=DateJsonDeserializer.class)
    @ApiModelProperty(value = "结束时间")
    private Date endDate;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonDeserialize(using=DateJsonDeserializer.class)
    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

    @ApiModelProperty(value = "修改人")
    private String updateBy;

    @ApiModelProperty(value = "审核人")
    private String auditBy;

    @ApiModelProperty(value = "审核时间")
    private String auditTime;

    @ApiModelProperty(value = "审批意见")
    private String auditInfo;


}
